elf header:
   EI_MAG = b'\x7fELF'
   EI_CLASS = 0x2
   EI_DATA = 0x1
   EI_VERSION = 0x1
   EI_OSABI = 0x0
   EI_ABIVERSION = 0x0
   EI_PAD = b'\x00\x00\x00\x00\x00\x00\x00'
   e_type = 0x3
   e_machine = 0xf3
   e_version = 0x1
   e_entry = 0x5b0
   e_phoff = 0x40
   e_shoff = 0x1ec0
   e_flags = 0x5
   e_ehsize = 0x40
   e_phentsize = 0x38
   e_phnum = 0xa
   e_shentsize = 0x40
   e_shnum = 0x23
   e_shstrndx = 0x22
Program Header:
   p_type = 0x6
   p_flags = 0x4
   p_offset = 0x40
   p_vaddr = 0x40
   p_paddr = 0x40
   p_filesz = 0x230
   p_memsz = 0x230
   p_align = 0x8
Program Header:
   p_type = 0x3
   p_flags = 0x4
   p_offset = 0x270
   p_vaddr = 0x270
   p_paddr = 0x270
   p_filesz = 0x21
   p_memsz = 0x21
   p_align = 0x1
Program Header:
   p_type = 0x70000003
   p_flags = 0x4
   p_offset = 0x1074
   p_vaddr = 0x0
   p_paddr = 0x0
   p_filesz = 0x4a
   p_memsz = 0x0
   p_align = 0x1
Program Header:
   p_type = 0x1
   p_flags = 0x5
   p_offset = 0x0
   p_vaddr = 0x0
   p_paddr = 0x0
   p_filesz = 0x6fc
   p_memsz = 0x6fc
   p_align = 0x1000
Program Header:
   p_type = 0x1
   p_flags = 0x6
   p_offset = 0xe08
   p_vaddr = 0x1e08
   p_paddr = 0x1e08
   p_filesz = 0x248
   p_memsz = 0x250
   p_align = 0x1000
Program Header:
   p_type = 0x2
   p_flags = 0x6
   p_offset = 0xe20
   p_vaddr = 0x1e20
   p_paddr = 0x1e20
   p_filesz = 0x1e0
   p_memsz = 0x1e0
   p_align = 0x8
Program Header:
   p_type = 0x4
   p_flags = 0x4
   p_offset = 0x294
   p_vaddr = 0x294
   p_paddr = 0x294
   p_filesz = 0x44
   p_memsz = 0x44
   p_align = 0x4
Program Header:
   p_type = 0x6474e550
   p_flags = 0x4
   p_offset = 0x6bc
   p_vaddr = 0x6bc
   p_paddr = 0x6bc
   p_filesz = 0x14
   p_memsz = 0x14
   p_align = 0x4
Program Header:
   p_type = 0x6474e551
   p_flags = 0x6
   p_offset = 0x0
   p_vaddr = 0x0
   p_paddr = 0x0
   p_filesz = 0x0
   p_memsz = 0x0
   p_align = 0x10
Program Header:
   p_type = 0x6474e552
   p_flags = 0x4
   p_offset = 0xe08
   p_vaddr = 0x1e08
   p_paddr = 0x1e08
   p_filesz = 0x1f8
   p_memsz = 0x1f8
   p_align = 0x1
Section Header 0:
   sh_name = 0x0
   sh_type = 0x0
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x0
   sh_size = 0x0
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x0
   sh_entsize = 0x0
   name_text = 
Section Header 1:
   sh_name = 0x1b
   sh_type = 0x1
   sh_flags = 0x2
   sh_addr = 0x270
   sh_offset = 0x270
   sh_size = 0x21
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .interp
Section Header 2:
   sh_name = 0x23
   sh_type = 0x7
   sh_flags = 0x2
   sh_addr = 0x294
   sh_offset = 0x294
   sh_size = 0x24
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x4
   sh_entsize = 0x0
   name_text = .note.gnu.build-id
Section Header 3:
   sh_name = 0x36
   sh_type = 0x7
   sh_flags = 0x2
   sh_addr = 0x2b8
   sh_offset = 0x2b8
   sh_size = 0x20
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x4
   sh_entsize = 0x0
   name_text = .note.ABI-tag
Section Header 4:
   sh_name = 0x44
   sh_type = 0x6ffffff6
   sh_flags = 0x2
   sh_addr = 0x2d8
   sh_offset = 0x2d8
   sh_size = 0x24
   sh_link = 0x5
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x0
   name_text = .gnu.hash
Section Header 5:
   sh_name = 0x4e
   sh_type = 0xb
   sh_flags = 0x2
   sh_addr = 0x300
   sh_offset = 0x300
   sh_size = 0xc0
   sh_link = 0x6
   sh_info = 0x2
   sh_addralign = 0x8
   sh_entsize = 0x18
   name_text = .dynsym
Section Header 6:
   sh_name = 0x56
   sh_type = 0x3
   sh_flags = 0x2
   sh_addr = 0x3c0
   sh_offset = 0x3c0
   sh_size = 0x7f
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .dynstr
Section Header 7:
   sh_name = 0x5e
   sh_type = 0x6fffffff
   sh_flags = 0x2
   sh_addr = 0x440
   sh_offset = 0x440
   sh_size = 0x10
   sh_link = 0x5
   sh_info = 0x0
   sh_addralign = 0x2
   sh_entsize = 0x2
   name_text = .gnu.version
Section Header 8:
   sh_name = 0x6b
   sh_type = 0x6ffffffe
   sh_flags = 0x2
   sh_addr = 0x450
   sh_offset = 0x450
   sh_size = 0x30
   sh_link = 0x6
   sh_info = 0x1
   sh_addralign = 0x8
   sh_entsize = 0x0
   name_text = .gnu.version_r
Section Header 9:
   sh_name = 0x7a
   sh_type = 0x4
   sh_flags = 0x2
   sh_addr = 0x480
   sh_offset = 0x480
   sh_size = 0xc0
   sh_link = 0x5
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x18
   name_text = .rela.dyn
Section Header 10:
   sh_name = 0x84
   sh_type = 0x4
   sh_flags = 0x42
   sh_addr = 0x540
   sh_offset = 0x540
   sh_size = 0x30
   sh_link = 0x5
   sh_info = 0x15
   sh_addralign = 0x8
   sh_entsize = 0x18
   name_text = .rela.plt
Section Header 11:
   sh_name = 0x89
   sh_type = 0x1
   sh_flags = 0x6
   sh_addr = 0x570
   sh_offset = 0x570
   sh_size = 0x40
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x10
   sh_entsize = 0x10
   name_text = .plt
Section Header 12:
   sh_name = 0x8e
   sh_type = 0x1
   sh_flags = 0x6
   sh_addr = 0x5b0
   sh_offset = 0x5b0
   sh_size = 0xea
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x4
   sh_entsize = 0x0
   name_text = .text
Section Header 13:
   sh_name = 0x94
   sh_type = 0x1
   sh_flags = 0x2
   sh_addr = 0x6a0
   sh_offset = 0x6a0
   sh_size = 0x1a
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x0
   name_text = .rodata
Section Header 14:
   sh_name = 0x9c
   sh_type = 0x1
   sh_flags = 0x2
   sh_addr = 0x6bc
   sh_offset = 0x6bc
   sh_size = 0x14
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x4
   sh_entsize = 0x0
   name_text = .eh_frame_hdr
Section Header 15:
   sh_name = 0xaa
   sh_type = 0x1
   sh_flags = 0x2
   sh_addr = 0x6d0
   sh_offset = 0x6d0
   sh_size = 0x2c
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x0
   name_text = .eh_frame
Section Header 16:
   sh_name = 0xb4
   sh_type = 0x10
   sh_flags = 0x3
   sh_addr = 0x1e08
   sh_offset = 0xe08
   sh_size = 0x8
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x8
   name_text = .preinit_array
Section Header 17:
   sh_name = 0xc3
   sh_type = 0xe
   sh_flags = 0x3
   sh_addr = 0x1e10
   sh_offset = 0xe10
   sh_size = 0x8
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x8
   name_text = .init_array
Section Header 18:
   sh_name = 0xcf
   sh_type = 0xf
   sh_flags = 0x3
   sh_addr = 0x1e18
   sh_offset = 0xe18
   sh_size = 0x8
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x8
   name_text = .fini_array
Section Header 19:
   sh_name = 0xdb
   sh_type = 0x6
   sh_flags = 0x3
   sh_addr = 0x1e20
   sh_offset = 0xe20
   sh_size = 0x1e0
   sh_link = 0x6
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x10
   name_text = .dynamic
Section Header 20:
   sh_name = 0xe4
   sh_type = 0x1
   sh_flags = 0x3
   sh_addr = 0x2000
   sh_offset = 0x1000
   sh_size = 0x8
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x0
   name_text = .data
Section Header 21:
   sh_name = 0xea
   sh_type = 0x1
   sh_flags = 0x3
   sh_addr = 0x2008
   sh_offset = 0x1008
   sh_size = 0x48
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x8
   name_text = .got
Section Header 22:
   sh_name = 0xef
   sh_type = 0x8
   sh_flags = 0x3
   sh_addr = 0x2050
   sh_offset = 0x1050
   sh_size = 0x8
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .bss
Section Header 23:
   sh_name = 0xf4
   sh_type = 0x1
   sh_flags = 0x30
   sh_addr = 0x0
   sh_offset = 0x1050
   sh_size = 0x24
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x1
   name_text = .comment
Section Header 24:
   sh_name = 0xfd
   sh_type = 0x70000003
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x1074
   sh_size = 0x4a
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .riscv.attributes
Section Header 25:
   sh_name = 0x10f
   sh_type = 0x1
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x10be
   sh_size = 0x30
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .debug_aranges
Section Header 26:
   sh_name = 0x11e
   sh_type = 0x1
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x10ee
   sh_size = 0xd7
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .debug_info
Section Header 27:
   sh_name = 0x12a
   sh_type = 0x1
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x11c5
   sh_size = 0x8e
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .debug_abbrev
Section Header 28:
   sh_name = 0x138
   sh_type = 0x1
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x1253
   sh_size = 0x6b
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .debug_line
Section Header 29:
   sh_name = 0x144
   sh_type = 0x1
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x12c0
   sh_size = 0x40
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x8
   sh_entsize = 0x0
   name_text = .debug_frame
Section Header 30:
   sh_name = 0x151
   sh_type = 0x1
   sh_flags = 0x30
   sh_addr = 0x0
   sh_offset = 0x1300
   sh_size = 0xaf
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x1
   name_text = .debug_str
Section Header 31:
   sh_name = 0x15c
   sh_type = 0x1
   sh_flags = 0x30
   sh_addr = 0x0
   sh_offset = 0x13af
   sh_size = 0x5f
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x1
   name_text = .debug_line_str
Section Header 32:
   sh_name = 0x1
   sh_type = 0x2
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x1410
   sh_size = 0x708
   sh_link = 0x21
   sh_info = 0x38
   sh_addralign = 0x8
   sh_entsize = 0x18
   name_text = .symtab
Section Header 33:
   sh_name = 0x9
   sh_type = 0x3
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x1b18
   sh_size = 0x23b
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .strtab
Section Header 34:
   sh_name = 0x11
   sh_type = 0x3
   sh_flags = 0x0
   sh_addr = 0x0
   sh_offset = 0x1d53
   sh_size = 0x16c
   sh_link = 0x0
   sh_info = 0x0
   sh_addralign = 0x1
   sh_entsize = 0x0
   name_text = .shstrtab
